<template>
	<div id="ContactUs" class="bg3e8">
		<el-card class="w1200 card p25">
			<div v-html="MarkdownData" class="markdown-body"></div>
			<div class="mapbody"><div class="map" id="container"></div></div>
		</el-card>
	</div>
</template>
<script>
// 这里可以导入其他文件（比如：组件，工具js，第三方插件js，json文件，图片文件等等）
const {marked} = require('marked')
// 例如：import 《组件名称》 from '《组件路径》';
import axios from 'axios'
import AMapLoader from '@amap/amap-jsapi-loader'
window.AMapSecurityConfig = {
	securityJsCode: 'cd9820e02c70188590f43807e00a437b'
}
export default {
	// import引入的组件需要注入到对象中才能使用
	components: {},
	props: {},
	data() {
		// 这里存放数据
		return {MarkdownData: '', map: null}
	},
	computed: {}, // 计算属性 类似于data概念
	watch: {}, // 监控data中的数据变化
	methods: {
		getMarkdownData() {
			axios.get(`/md/ContactUs.md`).then(res => {
				this.MarkdownData = marked(res.data)
			})
		},
		initMap() {
			AMapLoader.load({
				key: 'dda182efc7871a9a82f31a6ff2d7b2e2', // 申请好的Web端开发者Key，首次调用 load 时必填
				version: '2.0', // 指定要加载的 JSAPI 的版本，缺省时默认为 1.4.15
				plugins: ['AMap.ToolBar', 'AMap.Scale', 'AMap.HawkEye', 'AMap.MapType', 'AMap.Geolocation'] // 需要使用的的插件列表，如比例尺'AMap.Scale'等
			})
				.then(AMap => {
					this.map = new AMap.Map('container', {
						// 设置地图容器id
						viewMode: '3D', // 是否为3D地图模式
						zoom: 16.5, // 初始化地图级别
						center: [112.82868, 28.30054] // 初始化地图中心点位置
					})
					this.map.addControl(new AMap.Scale())
					this.map.addControl(new AMap.ToolBar())
					this.map.addControl(new AMap.HawkEye())
					this.map.addControl(new AMap.MapType())
					this.map.addControl(new AMap.Geolocation())
				})
				.catch()
		}
	}, // 方法集合
	created() {}, // 生命周期 - 创建完成（可以访问当前this实例）
	mounted() {
		this.getMarkdownData()
		// DOM初始化完成进行地图初始化
		this.initMap()
	}, // 生命周期 - 挂载完成（可以访问DOM元素）
	beforeCreate() {}, // 生命周期 - 创建之前
	beforeMount() {}, // 生命周期 - 挂载之前
	beforeUpdate() {}, // 生命周期 - 更新之前
	updated() {}, // 生命周期 - 更新之后
	beforeDestroy() {}, // 生命周期 - 销毁之前
	destroyed() {}, // 生命周期 - 销毁完成
	activated() {} // 如果页面有keep-alive缓存功能，这个函数会触发
}
</script>
<style lang="less" scoped>
#ContactUs {
	width: 100%;
	padding: 25px 0;
	.card {
		min-height: 600px;
		background-color: white;
		box-sizing: border-box;
		.mapbody {
			width: 100%;
			.map {
				width: 100%;
				height: 550px;
				border: 1px solid;
				margin: 20px auto 0;
			}
		}
	}
}
</style>
